package cn.itcast.dao;

import cn.itcast.pojo.Order;
import com.github.pagehelper.Page;

import java.util.List;

public interface OrderDao {



    /**
     *
     * 查询当前用户所有的预约
     * @param memberId
     * @return
     */
    List<Order> findAll(Integer memberId);

    /**
     * 根据id更新预约信息
     *
     * 分页条件查询
     * @param queryString 查询条件
     * @param orderType   预约状态
     * @param payStatus   支付状态
     * @param minTime    开始时间
     * @param maxTime     结束时间
     * @return
     */
    List<Order> findPage(String queryString,String orderType,Integer  payStatus, String minTime,String maxTime);


    /**
     * 根据id 查询
     * @param id
     * @return
     */
    Order findById(String id);

    /**
     * 预约更新
     * @param order
     * @return
     */
    int update(Order order);

    /**
     *
     * 根据条件查询用户预约数量
     * @param condition
     * @return
     */
    Long findOrderCountByCondition(Order condition);

    /**
     * 添加预约信息
     * @param order
     */
    void add(Order order);


    /**
     * 预约保存
     * @param order
     * @return
     */
    int insert(Order order);

    /**
     * 判断 及更新
     * @param order
     * @return
     */
    int updateById(Order order);

    /**
     * 更具id删除
     * @param id
     * @return
     */
    int deleteById(String id);

    Order findByOrderId(String id);
}
